ডেটা সায়েন্স এবং পরিসংখ্যানের ক্ষেত্রের গুরুত্বপূর্ণ দুটি ধারণা হলো Data Distribution এবং Outliers Detection। এগুলি ডেটার বৈশিষ্ট্য বুঝতে সাহায্য করে এবং মডেল ট্রেনিং বা ডেটা বিশ্লেষণের প্রক্রিয়ায় সহায়ক হয়।
১. Data Distribution
Data Distribution হল ডেটার বন্টন বা ব্যাবস্থাপন যেটি বিভিন্ন উপায়ে নির্ধারণ করা যেতে পারে। এটি মূলত একটি গাণিতিক ধারণা যা একটি ডেটা সেটের মানগুলি কিভাবে সাজানো হয়েছে বা তারা কোথায় কেন্দ্রীভূত আছে তা বুঝতে সাহায্য করে। ডেটা ডিস্ট্রিবিউশন বোঝা আমাদের জন্য গুরুত্বপূর্ণ কারণ এটি ডেটা পরিসংখ্যানের কাঠামো এবং বৈশিষ্ট্য নির্ধারণে সহায়ক।
Data Distribution এর কিছু প্রধান প্রকার:
- Normal Distribution (গৌণ বন্টন):
- এটি একটি গুরুত্বপূর্ণ ডেটা বন্টন যেখানে ডেটার অধিকাংশ মান মধ্যম মান এর কাছাকাছি থাকে এবং বন্টনটি ঘণ্টা আকারে থাকে।
- এটি একটি সিমেট্রিক্যাল (Symmetrical) বন্টন যার মানগুলো গড়ের (mean) আশেপাশে কেন্দ্রিত থাকে।
- গণনা: এটি গৌণ (bell-shaped) আকারে থাকে, যা ডেটার অধিকাংশ মান গড়ের কাছাকাছি হতে দেখায়। উদাহরণ: মানুষের উচ্চতা, আইকিউ স্কোর ইত্যাদি।
- কনসেপ্ট: mean = median = mode
- Uniform Distribution (সামান্য বন্টন):
- যেখানে সমস্ত মান সমানভাবে বন্টিত থাকে। এটি একটি সোজা (Flat) লাইন তৈরি করে। উদাহরণ: ডাইসের ফেলার ফলাফল।
- Binomial Distribution (দ্বিপদী বন্টন):
- যেখানে দুটি সম্ভাব্য ফলাফল থাকতে পারে (যেমন, সাফল্য বা ব্যর্থতা)। উদাহরণ: পয়সা ফেললে মাথা বা পুচ্ছ।
- Exponential Distribution (এক্সপোনেনশিয়াল বন্টন):
- যেখানে একটি নির্দিষ্ট রেটের সাথে কোনও ঘটনা ঘটে এবং এই রেটের সাথে সংযুক্ত একটি ডিস্ট্রিবিউশন পাওয়া যায়।
- Skewed Distribution (বিভ্রান্ত বন্টন):
- যখন ডেটার বন্টন একদিকে ভারী থাকে এবং অন্যদিকে কিছুটা ছড়িয়ে থাকে, তখন এই বন্টনটি স্কিউড (skewed) হয়। দুটি প্রকারের স্কিউড বন্টন আছে:
- Right Skewed (Positive Skew): ডেটা ডান দিকে ঝুঁকেপড়া থাকে, যেমন আয় বা বয়সের ডিস্ট্রিবিউশন।
- Left Skewed (Negative Skew): ডেটা বাম দিকে ঝুঁকেপড়া থাকে, যেমন ছাত্রদের পরীক্ষার মার্কস।
- যখন ডেটার বন্টন একদিকে ভারী থাকে এবং অন্যদিকে কিছুটা ছড়িয়ে থাকে, তখন এই বন্টনটি স্কিউড (skewed) হয়। দুটি প্রকারের স্কিউড বন্টন আছে:
Data Distribution ভিজ্যুয়ালাইজেশন:
ডেটার বন্টন বুঝতে হিস্টোগ্রাম বা কোর্নেল ডেনসিটি এস্টিমেট (Kernel Density Estimate, KDE) চার্ট ব্যবহার করা হয়। উদাহরণস্বরূপ:
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# কিছু নমুনা ডেটা তৈরি করা
data = pd.Series([2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 15, 18, 22, 25, 30])
# Hist plot এবং KDE plot
sns.histplot(data, kde=True)
plt.show()
২. Outliers Detection (আউটলায়ার সনাক্তকরণ)
Outliers বা অস্বাভাবিক মান হল এমন ডেটা পয়েন্ট যা অন্যান্য ডেটা পয়েন্টের তুলনায় অস্বাভাবিকভাবে আলাদা বা দূরে থাকে। আউটলায়ারগুলি ডেটা বিশ্লেষণ এবং মডেলিংয়ের ফলাফলকে প্রভাবিত করতে পারে, তাই এগুলি সনাক্ত করা এবং নির্ধারণ করা গুরুত্বপূর্ণ।
Outliers সনাক্ত করার পদ্ধতিগুলি:
- Statistical Methods:
- Z-score: এটি একটি স্ট্যাটিস্টিক্যাল পদ্ধতি যা সনাক্ত করে কিভাবে একটি মান গড় থেকে বিচ্যুত। সাধারণত, যদি Z-score মানের পরিসীমা 3 এর বাইরে থাকে (3σ), তাহলে সেটি আউটলায়ার হতে পারে।
- IQR (Interquartile Range): IQR একটি পরিসংখ্যান পদ্ধতি যা ডেটার ২৫তম (Q1) এবং ৭৫তম (Q3) পার্সেন্টাইলের মধ্যে পার্থক্য দেখায়। সাধারণভাবে, যদি কোনো ডেটা পয়েন্ট Q1 - 1.5IQR অথবা Q3 + 1.5IQR এর বাইরে থাকে, তাহলে সেটি আউটলায়ার হিসেবে চিহ্নিত হয়।
Z-Score দিয়ে Outliers Detection:
import numpy as np
import pandas as pd
from scipy import stats
# কিছু নমুনা ডেটা তৈরি
data = pd.Series([10, 12, 12, 14, 15, 16, 18, 100])
# Z-score হিসেব করা
z_scores = np.abs(stats.zscore(data))
print("Z-scores:", z_scores)
# Outliers সনাক্ত করা
outliers = data[z_scores > 2] # যেকোনো Z-score 2 এর বেশি হলে আউটলায়ার
print("Outliers:", outliers)
IQR দিয়ে Outliers Detection:
# IQR দিয়ে আউটলায়ার সনাক্তকরণ
Q1 = data.quantile(0.25)
Q3 = data.quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
outliers = data[(data < lower_bound) | (data > upper_bound)]
print("Outliers detected:", outliers)
Outliers-এর প্রভাব এবং সমাধান
- প্রভাব: আউটলায়ারগুলি মডেলিংয়ের সময় মডেলকে প্রভাবিত করতে পারে, যেমনঃ লিনিয়ার রিগ্রেশন, ক্লাস্টারিং বা কৃত্রিম নিউরাল নেটওয়ার্কে।
- সমাধান:
- আউটলায়ার মুছে ফেলা।
- আউটলায়ারগুলিকে সংশোধন বা পরিবর্তন করা।
- ডেটা ট্রান্সফরমেশন (যেমন: লোগারিদমিক ট্রান্সফরমেশন) প্রয়োগ করা।
সারাংশ
Data Distribution এবং Outliers Detection হল ডেটা বিশ্লেষণ এবং মডেলিংয়ের দুটি অত্যন্ত গুরুত্বপূর্ণ দিক। Data Distribution ডেটার বৈশিষ্ট্য এবং গঠন বিশ্লেষণ করতে সাহায্য করে, যখন Outliers Detection ডেটার অস্বাভাবিক বা দূরের মান সনাক্ত করতে সহায়ক, যা মডেলিং এবং পরিসংখ্যান বিশ্লেষণের সঠিকতা প্রভাবিত করতে পারে। Outliers সঠিকভাবে চিহ্নিত এবং পরিচালনা করা ডেটা বিশ্লেষণে সঠিক ফলাফল পেতে গুরুত্বপূর্ণ।
Read more